package com.iuie.ns.system.service.report;

import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import com.iuie.ns.frame.web.dataset.vo.Page;
import com.iuie.ns.system.vo.report.ReportInfoVO;

/**
 * 报表-service
 * @author liujie
 * @date 2018年5月19日下午3:40:47
 */
public interface IReportInfoService {

	/**
	 * 根据reportKey查询报表信息
	 * @param reportCategory
	 * @param reportKey
	 * @return
	 * @date 2018年5月19日下午4:18:19
	 */
	ReportInfoVO findByReportKey(String reportCategory, String reportKey);

	/**
	 * 分页查询报表信息
	 * @param page
	 * @param condition
	 * @return
	 * @date 2018年5月19日下午4:43:05
	 */
	List<ReportInfoVO> findByPage(Page page, ReportInfoVO condition);

	/**
	 * 新增单条记录
	 * @param item
	 * @date 2018年5月19日下午5:42:00
	 */
	void addOne(ReportInfoVO item);

	/**
	 * 根据Id删除
	 * @param reportId
	 * @return
	 * @date 2018年5月20日下午8:33:49
	 */
	Integer deleteById(String reportId);
	
	/**
	 * 根据Id查询单条记录
	 * @param reportId
	 * @return
	 * @date 2018年5月20日下午8:34:35
	 */
	ReportInfoVO findById(String reportId);

	/**
	 * 根据id查询报表json对象
	 * @param reportCategory
	 * @param reportKey 
	 * @param request
	 * @return
	 * @date 2018年5月22日上午10:13:05
	 */
	Map<String, String> findReportJson(String reportCategory, String reportKey, HttpServletRequest request);

	
}
